package com.swu.pad.reflection.service;

import java.util.List;
import java.util.Map;

import com.swu.pad.reflection.entity.ReflectionScore;
import com.swu.pad.reflection.entity.RftDimTipTemplate;
import com.swu.pad.reflection.entity.RftDimTips;
import com.swu.pad.reflection.entity.RftFbItemScore;
import com.swu.pad.reflection.entity.RftFeedbackItem;
import com.swu.pad.reflection.entity.RftFeedbackTemplate;
import com.swu.pad.reflection.entity.RftFeedbackTemplate;
import com.swu.pad.system.entity.User;

public interface ReflectionService {
     
   //保存某个同学的 某次作业反思的得分
   public void saveReflectionScore(ReflectionScore reflectionScore);
   //获得某同学的 某次作业反思的得分
   public Map<String, Object> getStuRftScore(String studentId, String assignmentId);
   /*
	 * 获取 句子 内容 类别所有信息
	 */
	public Map<String, Object> getTextSentenceClass(String padId, String activityId, User user) throws Exception;
	//修改句子 类别
	public void modifySentenceClass(String sentenceId, String sentenceClass);
    /*
     * 查看旧版本 句子类别
     */
	public Map<String, Object> querySentences(String padId, String activityId, User user) throws Exception;
	/*
	 * 创建反思写作反馈模板
	 */
	public RftFeedbackTemplate  saveOrUpdaterftFbTemplate(RftFeedbackTemplate rtfFeedbackTemplate);
	/*
	 * 获取反思写作反馈模板列表
	 */
	public List<RftFeedbackTemplate> getRftFbTemplates();
	/*
	 * 根据id删除模板
	 */
	public void deleteRftFbTemplate(String templateId);
	/*
	 * 保存 或者 修改  反馈模板 条目
	 */
	public RftFeedbackItem saveOrUpdateRftFbItem(RftFeedbackItem rftFeedbackItem);
	/*
	 * 获取一个 模板所有条目
	 */
	public List<RftFeedbackItem> getRftFbItems(String templateId);
	/*
	 * 删除一个 反馈模板条目
	 */
	public void deleteRftFbItem(String itemId);
	/*
	 * 获取 反思作业 反馈模板条目
	 */
	public Map<String, Object> getRftFbTptItems(String assignmentId);
	/*
	 * 创建 保存 写作提示语模板
	 */
	public void saveOrUpdaterftRftDimTipTemplate(RftDimTipTemplate rftDimTipTemplate);
	
	/*
	 * 获取所有 写作提示语模板
	 */
	public List<RftDimTipTemplate> getRftDimTipTemplates();
	/*
	 * 删除 一个 反思写作提示语模板
	 */
	public void deleteRftDimTipTemplate(String templateId);
	/*
	 * 获取 一个 写作提示语 模板的所有条目
	 */
	public List<RftDimTips> getRftDimTips(String templateId);
	/*
	 * 保存 一个 反馈打分
	 */
	public void saveRftFbItemScore(RftFbItemScore rftFbItemScore);
	/*
	 * 保存看到反馈时的感受
	 */
	public void saveRftFbFeeling(RftFbItemScore rftFbItemScore);
	/*
	 * 删除一个反思写作 提示语 条目
	 */
	public void deleteRftTipsItem(String itemId);
	
}
